package com.one2manycall.service;


import com.one2manycall.vo.User;

import java.util.List;

/**
 * 用户服务接口，定义了对用户数据的操作方法
 */
public interface UserServiceI {

    /**
     * 保存用户信息
     * @param user 要保存的用户对象
     */
    void saveUser(User user);

    /**
     * 根据用户 ID 获取用户信息
     * @param id 用户的 ID
     * @return 对应的用户对象，如果未找到则返回 null
     */
    User getUserById(Long id);

    /**
     * 获取所有用户的信息
     * @return 包含所有用户的列表
     */
    List<User> getAllUsers();

    /**
     * 更新用户信息
     * @param user 包含更新后信息的用户对象
     */
    void updateUser(User user);

    /**
     * 根据用户 ID 删除用户
     * @param id 要删除的用户的 ID
     */
    void deleteUser(Long id);

    /**
     * 根据用户名查询用户
     * @param name
     * @return
     */
    User  findByUsername(String name);

}